******************************************************************
* Varieties of Economic Vulnerability  				 			 *
* Melina Altamirano, Sarah Berens & Franziska Deeg 	 			 *
* March 2021         											 *
* Datamanagement    											 *
******************************************************************

**********
* LOAD DATASET	
**********

use MEX_survey_RF_Vulnerabilities_AltamiranoEtAl2021.dta, clear 

**********
* RECODING VARIABLES for ANALYSIS
**********

**********
* DVs
**********

tab q2_1b
gen pension=.
replace pension=1 if q2_1b==4
replace pension=2 if q2_1b==3
replace pension=3 if q2_1b==2
replace pension=4 if q2_1b==1
replace pension=. if q2_1b==99
replace pension=. if q2_1b==98
label define pension 4"Agree" 3"Somewhat agree" 2"Rather disagree" 1"Disagree", replace  
label values pension pension
label variable pension "Pension"

tab q2_1c
gen health=.
replace health=1 if q2_1c==4
replace health=2 if q2_1c==3
replace health=3 if q2_1c==2
replace health=4 if q2_1c==1
replace health=. if q2_1c==99
replace health=. if q2_1c==98
label define health 4"Agree" 3"Somewhat agree" 2"Rather disagree" 1"Disagree", replace  
label values health health
label variable health "Health care"


tab q2_1e
gen prospera=.
replace prospera=1 if q2_1e==4
replace prospera=2 if q2_1e==3
replace prospera=3 if q2_1e==2
replace prospera=4 if q2_1e==1
replace prospera=. if q2_1e==99
replace prospera=. if q2_1e==98
label define prospera 4"Agree" 3"Somewhat agree" 2"Rather disagree" 1"Disagree", replace  
label values prospera prospera
label variable prospera "Prospera"


tab q2_2
gen prog_tax=.
replace prog_tax=1 if q2_2==3
replace prog_tax=2 if q2_2==2
replace prog_tax=3 if q2_2==1
replace prog_tax=. if q2_2==99
replace prog_tax=. if q2_2==98
label define prog_tax 3"50/30/20" 2"40/30/30" 1"33/33/33"
label values prog_tax prog_tax
label variable prog_tax "Progressive taxation"


**********
* Independent Var
**********
***********
* Labor Market status
***********

gen inf_selfempl=.
replace inf_selfemp=1 if q1_12==2 & q1_5==5
replace inf_selfemp=0 if q1_12==1 & q1_5==5
replace inf_selfemp=0 if q1_12==1 & q1_5==1
tab inf_selfempl
label define inf_selfempl 1"informal self-employed" 0"formal self-employed"
label values inf_selfempl inf_selfempl
tab q1_12 q1_5


* People that indicate having a written contract and IMSS/ISSSTE --> almost same result as in broad_formal
gen light_formalv2=.
replace light_formalv2=0 if q1_8==3  & q1_9_1==2 | q1_9_2==2 | q1_9_3==2 | inf_selfempl==1
replace light_formalv2=1 if q1_8==1 | q1_8==2  & q1_9_1==1 | q1_9_2==1 | q1_9_3==1 
label define light_formalv2 0"Informal" 1"Formal", modify
label values light_formalv2 light_formalv2
label variable light_formalv2 "Formal/Informal Worker"
tab light_formalv2

*Informal, formal (light) and unemployed
gen labor_force=.
replace labor_force=2 if q1_8==1 | q1_8==2 & q1_9_1==1 | q1_9_2==1 | q1_9_3==1 
*formal
replace labor_force=1 if q1_8==3 & q1_9_1==2 | q1_9_2==2 | q1_9_3==2 
*informal
replace labor_force=3 if q1_1==6 
*unemployed
label define labor_force 1"informal" 2"formal" 3"unemployed", replace 
label values labor_force labor_force
tab labor_force

gen labor_force3=.
replace labor_force3=1 if q1_8==3 & q1_9_1==2 | q1_9_2==2 | q1_9_3==2 
replace labor_force3=2 if q1_8==1 | q1_8==2 & q1_9_1==1 | q1_9_2==1 | q1_9_3==1 
replace labor_force3=3 if q1_1==3 | q1_1==4 | q1_1==5 | q1_1==6 | q1_1==7
label define labor_force3 1"Informal" 2"Formal" 3"Non-employed", modify
label values labor_force3 labor_force3
tab labor_force3
label variable labor_force3 "Labor Force"


tab q1_10
**Formal to informal: How likely is it? 2x2 
gen fortoinf=.
replace fortoinf=. if q1_10==0
replace fortoinf=1 if q1_10==1
replace fortoinf=1 if q1_10==2
replace fortoinf=0 if q1_10==3
replace fortoinf=0 if q1_10==4
replace fortoinf=. if q1_10==98
replace fortoinf=. if q1_10==99
label define fortoinf 1"likely" 0"not likely", replace
label values fortoinf fortoinf
label variable fortoinf "Formal to Informal in Future"
tab fortoinf, missing

tab q1_11
**Informal to formal: How likely is it? 2x2
gen inftofor=. 
replace inftofor=. if q1_11==0
replace inftofor=1 if q1_11==1
replace inftofor=1 if q1_11==2
replace inftofor=0 if q1_11==3
replace inftofor=0 if q1_11==4
replace inftofor=. if q1_11==98
replace inftofor=. if q1_11==99
label define inftofor 1"likely" 0"not likely", replace
label values inftofor inftofor
label variable inftofor "Informal to Formal in Future"
tab inftofor, missing

 
gen secure_lmhistory=.
replace secure_lmhistory=0 if q1_16_1==1 & q1_8==3 & q1_9_1==2 | q1_9_2==2 | q1_9_3==2 | q1_12==2
replace secure_lmhistory=0 if q1_16_2==1 & q1_8==3 & q1_9_1==2 | q1_9_2==2 | q1_9_3==2 | q1_12==2
replace secure_lmhistory=1 if q1_16_1==1 & q1_8==1 | q1_8==2 & q1_9_1==1 | q1_9_2==1 | q1_9_3==1 | q1_12==1 
replace secure_lmhistory=1 if q1_16_2==1 & q1_8==1 | q1_8==2 & q1_9_1==1 | q1_9_2==1 | q1_9_3==1 | q1_12==1
label define secure_lmhistory 1"secure history" 0"insecure history"
label values secure_lmhistory secure_lmhistory
tab secure_lmhistory


***********
* Household constellation
***********

gen household4=.
replace household4=1 if light_formalv2==0 & q1_15_1==1
replace household4=2 if light_formalv2==1 & q1_15_1==2
replace household4=3 if light_formalv2==1 & q1_15_2==2 
replace household4=4 if light_formalv2==0 & q1_15_1==2 
label define household4 1"Informal HH" 2"Formal HH" 3"Mixed HH, formal resp" 4"Mixed HH, informal resp", modify
label values household4 household4
tab household4
label variable household4 "Household Composition"

**********
* Controls
***********
gen dependants=.
replace dependants=1 if q1_15_3==2
replace dependants=0 if q1_15_3==1
replace dependants=. if q1_15_3==0
tab dependants
*1= yes, 0=no

tab tipo
gen urban=.
replace urban=1 if tipo=="U"
replace urban=0 if tipo=="M"
replace urban=0 if tipo=="R"
label define urban 1"urban" 0"rural"
label values urban
tab urban

gen state=.
replace state=1 if edo==9
replace state=0 if edo==2
label define state2 1"Puebla" 0"Querétaro"
label values state state2


gen female=.
replace female=1 if q14_1==2
replace female=0 if q14_1==1
label define female 1"female" 0"male"
label values female female

tab q14_8
gen age= q14_8

gen age_sq=age*age


gen resp_edu=.
replace resp_edu=1 if amai_1==1 
replace resp_edu=1 if amai_1==2 
replace resp_edu=2 if amai_1==3 
replace resp_edu=3 if amai_1==4 
replace resp_edu=4 if amai_1==5 
replace resp_edu=5 if amai_1==6
replace resp_edu=6 if amai_1==7
replace resp_edu=7 if amai_1==8
replace resp_edu=7 if amai_1==12
replace resp_edu=7 if amai_1==13 
replace resp_edu=8 if amai_1==9 
replace resp_edu=9 if amai_1==10 
replace resp_edu=10 if amai_1==11  
replace resp_edu=. if amai_1==99 
replace resp_edu=. if amai_1==98
 replace resp_edu=1 if q14_2==1 
replace resp_edu=2 if q14_2==2 
replace resp_edu=3 if q14_2==3 
replace resp_edu=4 if q14_2==4 
replace resp_edu=5 if q14_2==5 
replace resp_edu=6 if q14_2==8 
replace resp_edu=7 if q14_2==9
replace resp_edu=7 if q14_2==6
replace resp_edu=7 if q14_2==7 
replace resp_edu=8 if q14_2==10 
replace resp_edu=9 if q14_2==11 
replace resp_edu=10 if q14_2==12
replace resp_edu=10 if q14_2==13  
replace resp_edu=. if q14_2==99 
replace resp_edu=. if q14_2==98
tab resp_edu
label define resp_edu 1"No education" 2"Incomplete Primary" 3"Primary completed" 4 "Incomplete Secondary" 5"Secondary completed" 6"Incomplete High school" 7"High school completed" 8"Incomplete Bachelor" 9"Bachelor completed" 10"Master and beyond" 
label values resp_edu resp_edu
tab resp_edu

tab amain
destring amain,ignore(",") replace

gen inc_amain=.
replace inc_amain=7 if amain==1
replace inc_amain=6 if amain==2
replace inc_amain=5 if amain==3
replace inc_amain=4 if amain==4
replace inc_amain=3 if amain==5
replace inc_amain=2 if amain==6
replace inc_amain=1 if amain==7
replace inc_amain=. if amain==99
label define inc_amain 1 "poor" 7"rich"
label values inc_amain inc_amain

gen married=.
replace married=1 if q14_9==1
replace married=0 if q14_9==2
replace married=0 if q14_9==3
replace married=0 if q14_9==4
replace married=. if q14_9==99
label define married 1"married" 0"single/divorced/widowed"
label values married married

tab q10_4
gen corr_perception=.
replace corr_perception=1 if q10_4==4
replace corr_perception=2 if q10_4==3
replace corr_perception=3 if q10_4==2
replace corr_perception=4 if q10_4==1
replace corr_perception=. if q10_4==99
replace corr_perception=. if q10_4==98
label define corr_perception 1"not often" 4"very often"
label values corr_perception corr_perception


*q10_3 Union membership
tab q10_3
gen union_memb=.
replace union_memb=0 if q10_3==2
replace union_memb=1 if q10_3==1
replace union_memb=. if q10_3==99
label define union_memb 0"No" 1"Yes"
label values union_memb union_memb
tab union_memb


gen job_insecurity=.
replace job_insecurity=4 if q1_17==1
replace job_insecurity=3 if q1_17==2
replace job_insecurity=2 if q1_17==3
replace job_insecurity=1 if q1_17==4
replace job_insecurity=. if q1_17==98
replace job_insecurity=. if q1_17==99
label define job_insecurity 1"not worried" 2"somewhat" 3"very" 4"extremely worried", modify
label values job_insecurity job_insecurity


***Vote Choice
tab q10_2
gen vote_choice=.
replace vote_choice=1 if q10_2==0
replace vote_choice=2 if q10_2==1
replace vote_choice=3 if q10_2==2
replace vote_choice=4 if q10_2==3
replace vote_choice=5 if q10_2==4
replace vote_choice=6 if q10_2==5
replace vote_choice=7 if q10_2==6
replace vote_choice=8 if q10_2==7
replace vote_choice=. if q10_2==99
label define vote_choice 1"Didn't vote" 2"Anaya PAN" 3"Meade PRI" 4"AMLO" 5"Calderon" 6"Other" 7"blank ballot" 8"None"
label values vote_choice vote_choice
tab vote_choice

gen CCT_receive=.
replace CCT_receive=1 if q8_8_o1==11 | q8_8_o2==11 | q8_8_o3==11 | q8_8_o4==11 | q8_8_o5==11
replace CCT_receive=0 if q8_8_o1!=11 & q8_8_o2!=11 & q8_8_o3!=11 & q8_8_o4!=11 & q8_8_o5!=11
tab CCT_receive
